<p><strong><?php echo T_('История начислений и списаний:'); ?></strong></p>

<?php echo form_open($this->curl . '/stat/'.$id, 'id="create_form" name="create_form"')?>
	<?php echo T_('С'); ?>: 
	<?php echo form_input('date_start', $date_start, 'id="date_start" class="input-text" size="10"')?>
	<input id="f_btn1" type="button" style="margin:0;padding:0;width:26px;height:20px" value="..."  />				
	<?php echo T_('по'); ?>: 
	<?php echo form_input('date_end', $date_end, 'id="date_end" class="input-text" size="10"')?>
	<input id="f_btn2" type="button" style="margin:0;padding:0;width:26px;height:20px" value="..."  />				
	<input name="search" type="submit" value="<?php echo T_('Искать'); ?>"  />
<?php echo form_close()?>

<table width="100%" border="0" cellpadding="3" cellspacing="0" id="grid" class="display">
<thead>
<tr>	
	<th><?php echo T_('Наименование операции') ?></th>
	<th><?php echo T_('Дата операции') ?></th>
	<th><?php echo T_('Время,<br />ч.м.с.') ?></th>
	<th><?php echo T_('Сумма начисления,<br />грн') ?></th>
	<th><?php echo T_('Сумма списания,<br />грн') ?></th>
	<th><?php echo T_('Баланс лицевого счета,<br />грн') ?></th>
</tr>
</thead>
<tbody>
<?php 
$num = 1;
foreach ($table_list as $row): ?>
<tr id="tr_<?php echo $num?>">
	<td><?php echo T_($row->calls_type)?></td>	
	<td><?php echo T_($row->call_date)?></td>
	<td><?php echo T_($row->call_time)?></td>	
	<td class="t-right"><?php echo T_($row->bonus_users)?></td>	
	<td class="t-right"><?php echo T_($row->cost_users)?></td>	
	<td class="t-right"><?php echo T_($row->balance)?></td>
</tr>
<?php endforeach; ?>
</tbody>
<tfoot>
	<tr>		
		<th id="id_calls_type"></th>
		<th id="id_call_date"></th>
		<th></th>
		<th></th>
		<th></th>	
		<th></th>	
	</tr>
</tfoot>
</table>

<br />
<div class="hr"></div>
<table class="nostyle" width="100%" border="0" cellpadding="0" cellspacing="0">
<tr>
	<td>
		<?php echo $this->validation->error_string?>
		<table class="nostyle" width="100%" border="0" cellpadding="3" cellspacing="0">		
		<tr>
			<th><?php echo T_('Число прослушиваний:  ');
				  if (!empty($list->num_adv_calls)) echo $list->num_adv_calls; ?>	
			</th>
		</tr>
		<tr>
			<th><?php echo T_('Число звонков:  ');
				  if (!empty($list->num_calls)) echo $list->num_calls; ?>
			</th>			
		</tr>
		<tr>
			<th><?php echo T_('Начислено бонусов:  ');
				  if (!empty($list->bonus_debit)) echo $list->bonus_debit; ?>
			</th>			
		</tr>
		<tr>
			<th><?php echo T_('Потрачено на звонки:  ');
				  if (!empty($list->bonus_credit)) echo $list->bonus_credit; ?>			
			</th>			
		</tr>
		<tr>
			<th><?php echo T_('Число позитивных откликов:  ');
				  if (!empty($list->num_liked)) echo $list->num_liked; ?>
			</th>			
		</tr>
		<tr>
			<th><?php echo T_('Принятых email:  '); 
					if (!empty($list->num_liked)) echo $list->num_email; ?>
			</th>			
		</tr>
		<tr>
			<th><?php echo T_('Принятых sms:  ');
					if (!empty($list->num_liked)) echo $list->num_sms; ?>
			</th>		
		</tr>
		</table>
	</td>
</tr>
</table>

<script type="text/javascript">
var cal = Calendar.setup({
	onSelect: function(cal) { cal.hide() }
});

cal.manageFields("f_btn1", "date_start", "%Y-%m-%d");
cal.manageFields("f_btn2", "date_end", "%Y-%m-%d");

(function($) {
	/*
	 * Function: fnGetColumnData
	 * Purpose:  Return an array of table values from a particular column.
	 * Returns:  array string: 1d data array 
	 * Inputs:   object:oSettings - dataTable settings object. This is always the last argument past to the function
	 *           int:iColumn - the id of the column to extract the data from
	 *           bool:bUnique - optional - if set to false duplicated values are not filtered out
	 *           bool:bFiltered - optional - if set to false all the table data is used (not only the filtered)
	 *           bool:bIgnoreEmpty - optional - if set to false empty values are not filtered from the result array
	 * Author:   Benedikt Forchhammer <b.forchhammer /AT\ mind2.de>
	 */
	$.fn.dataTableExt.oApi.fnGetColumnData = function ( oSettings, iColumn, bUnique, bFiltered, bIgnoreEmpty ) {
		// check that we have a column id
		if ( typeof iColumn == "undefined" ) return new Array();
		
		// by default we only wany unique data
		if ( typeof bUnique == "undefined" ) bUnique = true;
		
		// by default we do want to only look at filtered data
		if ( typeof bFiltered == "undefined" ) bFiltered = true;
		
		// by default we do not wany to include empty values
		if ( typeof bIgnoreEmpty == "undefined" ) bIgnoreEmpty = true;
		
		// list of rows which we're going to loop through
		var aiRows;
		
		// use only filtered rows
		if (bFiltered == true) aiRows = oSettings.aiDisplay; 
		// use all rows
		else aiRows = oSettings.aiDisplayMaster; // all row numbers
	
		// set up data array	
		var asResultData = new Array();
		
		for (var i=0,c=aiRows.length; i<c; i++) {
			iRow = aiRows[i];
			var aData = this.fnGetData(iRow);
			var sValue = aData[iColumn];
			
			// ignore empty values?
			if (bIgnoreEmpty == true && sValue.length == 0) continue;
	
			// ignore unique values?
			else if (bUnique == true && jQuery.inArray(sValue, asResultData) > -1) continue;
			
			// else push the value onto the result data array
			else asResultData.push(sValue);
		}
		
		return asResultData;
	}}(jQuery));
	
	
	function fnCreateSelect( aData )
	{
		var r='<select><option value=""></option>', i, iLen=aData.length;
		for ( i=0 ; i<iLen ; i++ )
		{
			r += '<option value="'+aData[i]+'">'+aData[i]+'</option>';
		}
		return r+'</select>';
	}

	
$(document).ready(function() {		

	/* Add a click handler to the rows - this could be used as a callback */
	$('#grid tr').click( function() {
		if ( $(this).hasClass('row_selected') )
		{			
			$(this).removeClass('row_selected');
			$(this).find('.checkbox').removeAttr('checked');
		}			
		else
		{
			$(this).addClass('row_selected');
			$(this).find('.checkbox').attr('checked', 'checked');
		}			
	});
	
	/* Init DataTables */
	oTable = $('#grid').dataTable(
	{
		"oLanguage": {
		"sLengthMenu": "Показывать _MENU_ записей на стр.",
		"sZeroRecords": "Нет данных.",
		"sInfo": "От _START_ до _END_ из _TOTAL_ записей",
		"sInfoEmpty": "0 записей",
		"sInfoFiltered": "(filtered from _MAX_ total records)",
		"sSearch": "Искать",
		"oPaginate": {
			"sFirst": "Первая",
			"sLast": "Последняя",
			"sNext": "Вперед",
			"sPrevious": "Back"
			}
		},
		
		"aaSorting": [[ 1, "desc" ]],				
		"aoColumns": [
  			{ "bSortable": false },
  			null,
  			null,
  			null,
  			null,
  			{ "bSortable": false }
		],
																	
		"bPaginate": true,
		"bLengthChange": true,
		"bFilter": true,	
		"bSort": true,
		"bInfo": true,
		"bAutoWidth": true,
		"bJQueryUI": true,
		"sPaginationType": "full_numbers"
	});	

	$("tfoot th#id_calls_type").each( function ( ) {
		this.innerHTML = fnCreateSelect( oTable.fnGetColumnData(0) );
		$('select', this).change( function () {
			oTable.fnFilter( $(this).val(), 0 );
		} );
	} );	
	
	$("tfoot th#id_call_date").each( function ( ) {
		this.innerHTML = fnCreateSelect( oTable.fnGetColumnData(1) );
		$('select', this).change( function () {
			oTable.fnFilter( $(this).val(), 1 );
		} );
	} );
	
});	

/*
 * I don't actually use this here, but it is provided as it might be useful and demonstrates
 * getting the TR nodes from DataTables
 */
function fnGetSelected( oTableLocal )
{
	var aReturn = new Array();
	var aTrs = oTableLocal.fnGetNodes();
	
	for ( var i=0 ; i<aTrs.length ; i++ )
	{
		if ( $(aTrs[i]).hasClass('row_selected') )
		{
			aReturn.push( aTrs[i] );
		}
	}
	return aReturn;
}
</script>